package cn.dduan.fool.collection.map;

import java.util.Comparator;
import java.util.TreeMap;

/**
 * TreeMap
 * <p>
 * TreeMap实现SortMap接口，能够把它保存的记录根据键排序，默认是按键值的升序排序（自然顺序），也可以指定排序的比较器，当用Iterator遍历TreeMap时，得到的记录是排过序的
 * <p>
 * 特点：
 * 1、数据结构：红黑树
 * 2、是否线程安全：否
 * 3、key是否可为null：否
 * 4、是否有序：是
 *
 * @author dduan
 * @version 1.0
 * @date 2023/3/28
 */
public class MyTreeMap {
    public static void main(String[] args) {
        TreeMap<Integer, Integer> treeMap = new TreeMap(new Comparator() {
            @Override
            public int compare(Object o1, Object o2) {
                int n = Integer.valueOf(o2.toString()) - Integer.valueOf(o1.toString());
                return n;
            }
        });

        treeMap.put(1, 1);
        treeMap.put(2, 2);
        treeMap.put(8, 8);
        System.out.println(treeMap.toString());
    }
}
